//
//  SegmentBar.h
//  SegmentBar_Example
//
//  Created by 王方伟 on 2017/12/4.
//  Copyright © 2017年 acct<blob>=0xE4BAA6616E64E5BF83  447246and457703. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "SegmentBarConfig.h"
@class SegmentBar;

@protocol SegmentBarDelegate <NSObject>

/**
 代理方法, 告诉外界, 内部的点击数据

 @param segmentBar SegmentBar
 @param toIndex 选中的索引(从0开始)
 @param fromIndex 上一个索引
 */
- (void)segmentBar: (SegmentBar *)segmentBar didSelectIndex: (NSInteger)toIndex fromIndex: (NSInteger)fromIndex;
- (void)segmentBar: (SegmentBar *)segmentBar updateConfig:(SegmentBarConfig *)config;
@end

@interface SegmentBar : UIView

/**
 快速创建一个选项卡控件

 @param frame frame
 @return 选项卡控件
 */
+ (instancetype)segmentBarWithFrame: (CGRect)frame;
/** 数据源 */
@property (nonatomic, strong) NSArray <NSString *>*items;
/** 当前选中的索引, 双向设置 */
@property (nonatomic, assign) NSInteger selectIndex;
/** 代理 */
@property (weak, nonatomic) id<SegmentBarDelegate> delegate;



/**
 修改控件属性

 @param configBlock SegmentBarConfig
 */
- (void)updateWithConfig:(void(^)(SegmentBarConfig *config))configBlock;
@end
